home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / slatzm.z / slatzm
Text File  |  1996-03-14  |  3KB  |  133 lines

  1.  
  2.  
  3.  
  4. SSSSLLLLAAAATTTTZZZZMMMM((((3333FFFF))))                                                          SSSSLLLLAAAATTTTZZZZMMMM((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      SLATZM - applie a Householder matrix generated by STZRQF to a matrix
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      SUBROUTINE SLATZM( SIDE, M, N, V, INCV, TAU, C1, C2, LDC, WORK )
  13.  
  14.          CHARACTER      SIDE
  15.  
  16.          INTEGER        INCV, LDC, M, N
  17.  
  18.          REAL           TAU
  19.  
  20.          REAL           C1( LDC, * ), C2( LDC, * ), V( * ), WORK( * )
  21.  
  22. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  23.      SLATZM applies a Householder matrix generated by STZRQF to a matrix.
  24.  
  25.      Let P = I - tau*u*u',   u = ( 1 ),
  26.                                  ( v )
  27.      where v is an (m-1) vector if SIDE = 'L', or a (n-1) vector if SIDE =
  28.      'R'.
  29.  
  30.      If SIDE equals 'L', let
  31.             C = [ C1 ] 1
  32.                 [ C2 ] m-1
  33.                   n
  34.      Then C is overwritten by P*C.
  35.  
  36.      If SIDE equals 'R', let
  37.             C = [ C1, C2 ] m
  38.                    1  n-1
  39.      Then C is overwritten by C*P.
  40.  
  41.  
  42. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  43.      SIDE    (input) CHARACTER*1
  44.              = 'L': form P * C
  45.              = 'R': form C * P
  46.  
  47.      M       (input) INTEGER
  48.              The number of rows of the matrix C.
  49.  
  50.      N       (input) INTEGER
  51.              The number of columns of the matrix C.
  52.  
  53.      V       (input) REAL array, dimension
  54.              (1 + (M-1)*abs(INCV)) if SIDE = 'L' (1 + (N-1)*abs(INCV)) if SIDE
  55.              = 'R' The vector v in the representation of P. V is not used if
  56.              TAU = 0.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSLLLLAAAATTTTZZZZMMMM((((3333FFFF))))                                                          SSSSLLLLAAAATTTTZZZZMMMM((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      INCV    (input) INTEGER
  75.              The increment between elements of v. INCV <> 0
  76.  
  77.      TAU     (input) REAL
  78.              The value tau in the representation of P.
  79.  
  80.      C1      (input/output) REAL array, dimension
  81.              (LDC,N) if SIDE = 'L' (M,1)   if SIDE = 'R' On entry, the n-
  82.              vector C1 if SIDE = 'L', or the m-vector C1 if SIDE = 'R'.
  83.  
  84.              On exit, the first row of P*C if SIDE = 'L', or the first column
  85.              of C*P if SIDE = 'R'.
  86.  
  87.      C2      (input/output) REAL array, dimension
  88.              (LDC, N)   if SIDE = 'L' (LDC, N-1) if SIDE = 'R' On entry, the
  89.              (m - 1) x n matrix C2 if SIDE = 'L', or the m x (n - 1) matrix C2
  90.              if SIDE = 'R'.
  91.  
  92.              On exit, rows 2:m of P*C if SIDE = 'L', or columns 2:m of C*P if
  93.              SIDE = 'R'.
  94.  
  95.      LDC     (input) INTEGER
  96.              The leading dimension of the arrays C1 and C2. LDC >= (1,M).
  97.  
  98.      WORK    (workspace) REAL array, dimension
  99.              (N) if SIDE = 'L' (M) if SIDE = 'R'
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.